Process models that are utilized for prediction, control and optimization can be divided into two general categories, steady-state models and dynamic models. In each case the model is a mathematical construct that characterizes the process, and process measurements are utilized to parameterize or fit the model so that it replicates the behavior of the process. The mathematical model can then be implemented in a simulator for prediction or inverted by an optimization algorithm for control or optimization.
Steady-state or static models are utilized in modern process control systems that usually store a great deal of data, this data typically containing steady-state information at many different operating conditions. The steady-state information is utilized to train a non-linear model wherein the process input variables are represented by the vector U that is processed through the model to output the dependent variable Y. The non-linear model is a steady-state phenomenological or empirical model developed utilizing several ordered pairs (U.sub.i, Y.sub.i) of data from different measured steady states. If a model is represented as: EQU Y=P(U,Y) (1)
where P is some parameterization, then the steady-state modeling procedure can be presented as: EQU (U,Y).fwdarw.P (2) PA1 where U and Y are vectors containing the U.sub.i, Y.sub.i ordered pair elements. Given the model P, then the steady-state process gain can be calculated as: ##EQU1##
The steady-state model therefore represents the process measurements that are taken when the system is in a "static" mode. These measurements do not account for the perturbations that exist when changing from one steady-state condition to another steady-state condition. This is referred to as the dynamic part of a model.
A dynamic model is typically a linear model and is obtained from process measurements which are not steady-state measurements; rather, these are the data obtained when the process is moved from one steady-state condition to another steady-state condition. This procedure is where a process input or manipulated variable u(t) is input to a process with a process output or controlled variable y(t) being output and measured. Again, ordered pairs of measured data (u(I), y(I)) can be utilized to parameterize a phenomenological or empirical model, this time the data coming from non-steady-state operation. The dynamic model is represented as: EQU y(t)=p(u(t)y(t)) (4)
where p is some parameterization. Then the dynamic modeling procedure can be represented as: EQU (u,y).fwdarw.p (5)
Where u and y are vectors containing the (u(I),y(I)) ordered pair elements. Given the model p, then the steady-state gain of a dynamic model can be calculated as: ##EQU2##
Unfortunately, almost always the dynamic gain k does not equal the steady-state gain K, since the steady-state gain is modeled on a much larger set of data, whereas the dynamic gain is defined around a set of operating conditions wherein an existing set of operating conditions are mildly perturbed. This results in a shortage of sufficient non-linear information in the dynamic data set in which non-linear information is contained within the static model. Therefore, the gain of the system may not be adequately modeled for an existing set of steady-state operating conditions. Thus, when considering two independent models, one for the steady-state model and one for the dynamic model, there is a mis-match between the gains of the two models when used for prediction, control and optimization. The reason for this mis-match are that the steady-state model is non-linear and the dynamic model is linear, such that the gain of the steady-state model changes depending on the process operating point, with the gain of the linear model being fixed. Also, the data utilized to parameterize the dynamic model do not represent the complete operating range of the process, i.e., the dynamic data is only valid in a narrow region. Further, the dynamic model represents the acceleration properties of the process (like inertia) whereas the steady-state model represents the tradeoffs that determine the process final resting value (similar to the tradeoff between gravity and drag that determines terminal velocity in free fall).
One technique for combining non-linear static models and linear dynamic models is referred to as the Hammerstein model. The Hammerstein model is basically an input-output representation that is decomposed into two coupled parts. This utilizes a set of intermediate variables that are determined by the static models which are then utilized to construct the dynamic model. These two models are not independent and are relatively complex to create.
Plants have been modeled utilizing the various non-linear networks. One type of network that has been utilized in the past is a neural network. These neural networks typically comprise a plurality of inputs which are mapped through a stored representation of the plant to yield on the output thereof predicted outputs. These predicted outputs can be any output of the plant. The stored representation within the plant is typically determined through a training operation.
During the training of a neural network, the neural network is presented with a set of training data. This training data typically comprises historical data taken from a plant. This historical data is comprised of actual input data and actual output data, which output data is referred to as the target data. During training, the actual input data is presented to the network with the target data also presented to the network, and then the network trained to reduce the error between the predicted output from the network and the actual target data. One very widely utilized technique for training a neural network is a backpropagation training algorithm. However, there are other types of algorithms that can be utilized to set the "weights" in the network.
When a large amount of steady-state data is available to a network, the stored representation can be accurately modeled. However, some plants have a large amount of dynamic information associated therewith. This dynamic information reflects the fact that the inputs to the plant undergo a change which results in a corresponding change in the output. If a user desired to predict the final steady-state value of the plant, plant dynamics may not be important and this data could be ignored. However, there are situations wherein the dynamics of the plant are important during the prediction. It may be desirable to predict the path that an output will take from a beginning point to an end point. For example, if the input were to change in a step function from one value to another, a steady-state model that was accurately trained would predict the final steady-state value with some accuracy. However, the path between the starting point and the end point would not be predicted, as this would be subject to the dynamics of the plant. Further, in some control applications, it may be desirable to actually control the plant such that the plant dynamics were "constrained," this requiring some knowledge of the dynamic operation of the plant.
In some applications, the actual historical data that is available as the training set has associated therewith a considerable amount of dynamic information. If the training data set had a large amount of steady-state information, an accurate model could easily be obtained for a steady-state model. However, if the historical data had a large amount of dynamic information associated therewith, i.e., the plant were not allowed to come to rest for a given data point, then there would be an error associated with the training operation that would be a result of this dynamic component in the training data. This is typically the case for small data sets. This dynamic component must therefore be dealt with for small training data sets when attempting to train a steady-state model.
When utilizing a model for the purpose of optimization, it is necessary to train a model on one set of input values to predict another set of input values at future time. This will typically require a steady-state modeling technique. In optimization, especially when used in conjunction with a control system, the optimization process will take a desired set of set points and optimizes those set points. However, these models are typically selected for accurate gain, a problem arises whenever the actual plant changes due to external influences, such as outside temperature, build up of slag, etc. Of course, one could regenerate the model with new parameters. However, the typical method is to actually measure the output of the plant, compare it with a predicted value to generate a "biased" value which sets forth the error in the plant as opposed to the model. This error is then utilized to bias the optimization network. However, to date this technique has required the use of steady-state models which are generally off-line models. The reason for this is that the actual values must "settle out" to reach a steady-state value before the actual bias can be determined. During operation of a plant, the outputs are dynamic.